package de.datamining.image;

import static org.junit.Assert.assertTrue;

import java.util.List;

import org.apache.log4j.BasicConfigurator;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.test.annotation.Rollback;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import de.preisrobot.entity.AmazonArtikelImage;
import de.preisrobot.entity.Artikel;
import de.preisrobot.persistence.dao.ArtikelDao;

public class ImageTypeKorrektur {

	@Test
	@Transactional(propagation=Propagation.REQUIRES_NEW)
	@Rollback(value=false)
	public void testNOnExistingFindArtikelByNr()
	{
		BasicConfigurator.configure();
		ApplicationContext appContext = new ClassPathXmlApplicationContext(
		"classpath*:applicationContext.xml");

		ArtikelDao dao = (ArtikelDao) appContext.getBean("ArtikelDao");
 		List<Artikel> find = 	dao.getAll();
 		
 		for (Artikel amazonArtikel : find) {
		
 			String imageLink = amazonArtikel.getImageLink();
			String imageType = AmazonArtikelImage.getImageType(imageLink);
			AmazonArtikelImage imageByArtikelId = dao.getImageByArtikelId(amazonArtikel.getId());
			
			if(null == imageByArtikelId)
				continue;
			
			AmazonArtikelImage find2 = dao.find(imageByArtikelId.getId());
			find2.setTyp(imageType);
			dao.updateImage(find2);
			
		}
	 
		assertTrue(find==null);
		 
	}

}
